; Bugs?: If you find a problem with this file, send the file and version
; information (from above) and the problem description to:
;
; Internet: apple.bugs@applelink.apple.com
; AppleLink: APPLE.BUGS
;
;
IF &TYPE('__AVCOMPONENTS__') = 'UNDEFINED' THEN
__AVCOMPONENTS__ SET 1
IF &TYPE('__DIALOGS__') = 'UNDEFINED' THEN
include 'Dialogs.a'
ENDIF
IF &TYPE('__VIDEO__') = 'UNDEFINED' THEN
include 'Video.a'
ENDIF
IF &TYPE('__DISPLAYS__') = 'UNDEFINED' THEN
include 'Displays.a'
ENDIF
IF &TYPE('__COMPONENTS__') = 'UNDEFINED' THEN
include 'Components.a'
ENDIF
IF &TYPE('FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE') = 'UNDEFINED' THEN
FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE: SET 1
ENDIF
IF FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE THEN
;
; The subtypes listed here are for example only. The display manager will find _all_ panels
; with the appropriate types. These panels return class information that is used to devide them
; up into groups to be displayed in the AV Windows (class means "geometry" or "color" or other groupings
; like that.
;
kAVPanelType EQU 'avpc' ; Panel subtypes
kBrightnessPanelSubType EQU 'brit'
kContrastPanelSubType EQU 'cont'
kBitDepthPanelSubType EQU 'bitd'
kAVEngineType EQU 'avec' ; Engine subtypes
kBrightnessEngineSubType EQU 'brit'
kContrastEngineSubType EQU 'cont' ; kBitDepthEngineSubType = 'bitd', // Not used
kAVPortType EQU 'avdp' ;subtypes are defined in each port's public .h file
;
; PortComponent subtypes are up to the port and display manager does not use the subtype
; to find port components. Instead, display manager uses an internal cache to search for portcompoennts.
; It turns out to be useful to have a unique subtype so that engines can see if they should apply themselves to
; a particular port component.
;
; PortKinds are the "class" of port. When a port is registered with display manager (creating a display ID), the
; caller of DMNewDisplayIDByPortComponent passes a portKind. Ports of this type are returned by
; DMNewDevicePortList.
;
; PortKinds are NOT subtypes of components
; PortKinds ARE used to register and find port components with Display Manager. Here are the basic port kinds:
;
; Video displays are distinct from video out because there are some video out ports that are not actaully displays.
; if EZAV is looking to configure displays, it needs to look for kAVVideoDisplayPortKind not kAVVideoOutPortKind.
;
kAVVideoDisplayPortKind EQU 'pkdo' ; Video Display (CRT or panel display)
kAVVideoOutPortKind EQU 'pkvo' ; Video out port (camera output).
kAVVideoInPortKind EQU 'pkvi' ; Video in port (camera input)
kAVSoundOutPortKind EQU 'pkso' ; Sound out port (speaker or speaker jack)
kAVSoundInPortKind EQU 'pksi' ; Sound in port (microphone or microphone jack)
kAVDeviceType EQU 'avdc' ; Device Component subtypes are up to the manufacturor since each device may contain multiple function types (eg telecaster)
kAVDisplayDeviceKind EQU 'dkvo' ; Display device
; Device Component subtypes are up to the manufacturor since each device may contain multiple function types (eg telecaster)
kAVCategoryType EQU 'avcc'
kAVSoundInSubType EQU 'avao'
kAVSoundOutSubType EQU 'avai'
kAVVideoInSubType EQU 'vdin'
kAVVideoOutSubType EQU 'vdou'
kAVInvalidType EQU 'badt' ; Some calls return a component type, in case of errors, these types are set to kAVInvalidComponentType
;
; Constants for Panel Classes (used to build buttons in AVSetup)
; but is generic to all panels
;
kAVPanelClassDisplayDefault EQU 'cdsp'
kAVPanelClassColor EQU 'cclr'
kAVPanelClassGeometry EQU 'cgeo'
kAVPanelClassSound EQU 'csnd'
kAVPanelClassPreferences EQU 'cprf'
; =============================
; Component interface revision levels and history
; =============================
kAVPanelComponentInterfaceRevOne EQU 1
kAVEngineComponentInterfaceRevOne EQU 1
kAVPortComponentInterfaceRevOne EQU 1
kAVDeviceComponentInterfaceRevOne EQU 1
kBaseAVComponentSelector EQU 256 ; First apple-defined selector for engine components
; =============================
; Panel Standard component selectors
; =============================
kAVPanelFakeRegisterSelect EQU -5 ; -5
kAVPanelSetCustomDataSelect EQU 0
kAVPanelGetDitlSelect EQU 1
kAVPanelGetTitleSelect EQU 2
kAVPanelInstallSelect EQU 3
kAVPanelEventSelect EQU 4
kAVPanelItemSelect EQU 5
kAVPanelRemoveSelect EQU 6
kAVPanelValidateInputSelect EQU 7
kAVPanelGetSettingsIdentifiersSelect EQU 8
kAVPanelGetSettingsSelect EQU 9
kAVPanelSetSettingsSelect EQU 10
kAVPanelSelectorGetFidelity EQU 256
kAVPanelSelectorTargetDevice EQU 257
kAVPanelSelectorGetPanelClass EQU 258
; =============================
; Engine Standard component selectors
; =============================
kAVEngineSelectorGetEngineFidelity EQU 256
kAVEngineSelectorTargetDevice EQU 257
; =============================
; Video Port Specific calls
; =============================
kAVPortCheckTimingMode EQU 0
; =============================
; AV Port Specific calls
; =============================
kAVPortGetAVDeviceFidelity EQU 256 ; Port Standard Component selectors
kAVPortGetWiggle EQU 257
kAVPortSetWiggle EQU 258
kAVPortGetName EQU 259
kAVPortGetGraphicInfo EQU 260
kAVPortSetActive EQU 261
kAVPortGetActive EQU 262
kAVPortUnsed1 EQU 263 ; Selector removed as part of API change. We don't want to mess up the following selectors, so we put in this spacer (ie kPadSelector).
kAVPortGetAVID EQU 264
kAVPortSetAVID EQU 265
kAVPortSetDeviceAVID EQU 266 ; For registrar to set device (instead of hitting global directly) -- should only be called once
kAVPortGetDeviceAVID EQU 267 ; Called by display mgr for generic ports
kAVPortGetPowerState EQU 268
kAVPortSetPowerState EQU 269
; =============================
; Device Component Standard Component selectors
; =============================
kAVDeviceGetName EQU 256
kAVDeviceGetGraphicInfo EQU 257
kAVDeviceGetPowerState EQU 258
kAVDeviceSetPowerState EQU 259
kAVDeviceGetAVID EQU 260 ; Not yet implemented
kAVDeviceSetAVID EQU 261 ; For registrar to set AVID (should be called only once)